跳至主要内容

Image-Based OTA 更新

完整指南,可在 Jetson 設備上進行空中(OTA)更新,無需主機電腦。


概述

基於 Image 的 OTA 更新 是一種安全機制,可通過閃寫預生成的映像來更新 Jetson 設備上的 JetPack 版本。

優點

  • ✅ 無需主機連接即可更新
  • ✅ 可實現自動化程序
  • ✅ 安全機制
  • ✅ 適合遠端部署

注意:OTA 工作需要 JetPack OS 未損壞。


步驟 1:下載 OTA 工具

根據目標 JetPack 版本(例如 JetPack 6.1 = r36.4.0)從 NVIDIA 下載 OTA 工具。

下載連結

OTA 工具下載


步驟 2:準備主機和 BSP

需求

  • 具有 Ubuntu 22.04+ 的 x86 設備
  • 256 GB 儲存空間
  • 已安裝 Docker
sudo apt install docker.io -y

按照 wiki 下載並編譯 BSP: AFE-R750 Wiki

BSP 準備


步驟 3:在容器中安裝依賴項

為了編譯 OTA 套件,容器必須通過 apt 命令安裝一些依賴項。

sudo apt update
sudo apt install -y uuid-runtime libxml2-utils cpio dosfstools python3-pip
pip3 install pyyaml

安裝依賴項


步驟 4:設置環境

將 BASE_BSP 和 TARGET_BSP 設置為 Linux_for_Tegra 資料夾的絕對路徑。如果僅重新閃寫 OS,兩個變量將設置為相同路徑。

export BASE_BSP=/home/adv/BSP/jetson_linux_risc/Linux_for_Tegra
export TARGET_BSP=/home/adv/BSP/jetson_linux_risc/Linux_for_Tegra

環境設置


步驟 5:設置 OTA 工具

將 OTA 工具放入 $TARGET_BSP/../,即 /home/adv/BSP/jetson_linux_risc/,並解壓縮 OTA 工具。

cd $TARGET_BSP/../
sudo tar xpf ota_tools_R36.4.0_aarch64.tbz2

OTA 工具設置


步驟 6:編譯 OTA 套件

cd $TARGET_BSP/../

AGX Orin eMMC

sudo -E ./tools/ota_tools/version_upgrade/l4t_generate_ota_package.sh jetson-agx-orin-devkit R36-4

AGX Orin NVMe

sudo -E ./tools/ota_tools/version_upgrade/l4t_generate_ota_package.sh --external-device nvme0n1 jetson-agx-orin-devkit R36-4

Orin NX NVMe

sudo -E ./tools/ota_tools/version_upgrade/l4t_generate_ota_package.sh --external-device nvme0n1 jetson-orin-nano-devkit R36-4

編譯時間:約 3 小時

完成整個程序後,獲取 OTA 套件:$TARGET_BSP/<target_board>/ota_payload_package.tar.gz

由於編譯命令已定義 OS 的儲存位置,建議重新命名檔案並包含 ModelName、JPSource、JPDest、Storage。

重新命名範例:AFE-R750_JP6.1_to_JP6.1_AGX_NVMe.tar.gz


步驟 7:準備 Jetson 設備

獲取預生成的 OTA 映像

  • 按照前面的會話,根據目標 Jetson 設備 BSP 和 OTA 工具生成自己的 OTA 套件。
  • 然後將 OTA 更新套件和 OTA 工具放入 Jetson 設備中進行重新閃寫或升級。

安裝依賴項

為了進行 OTA 更新,AFE-R750 必須通過 apt 命令安裝兩個依賴項。

sudo apt update
sudo apt install -y efibootmgr nvme-cli

在 Jetson 上安裝

設置 WORKDIR

建立 ota_tool 資料夾並將 OTA 工具和 OTA 映像放入其中。 將 ota_tool 的絕對路徑設置為 WORKDIR。

mkdir -p /home/ubuntu/ota_tool
export WORKDIR=/home/ubuntu/ota_tool

工作目錄

設置 OTA 工具

在 ota_tool 資料夾中解壓縮 OTA 工具。 建立 /ota 資料夾並將 OTA 映像移動到 /ota。

cd /home/ubuntu/ota_tool
sudo tar xpf ota_tools_R36.4.0_aarch64.tbz2
sudo mkdir /ota
sudo mv `<your_ota_package.tar.gz>` /ota

在 Jetson 上設置 OTA


步驟 8:觸發 OTA 更新

從 WORKDIR 進入 OTA 觸發腳本資料夾並觸發 OTA 更新。

cd Linux_for_Tegra/tools/ota_tools/version_upgrade
sudo ./nv_ota_start.sh /ota/<your_ota_package.tar.gz>

觸發 OTA


步驟 9:完成更新

觸發完成後,重新啟動系統。

sudo reboot

注意:重新啟動後,設備顯示黑屏約 30 分鐘。不要關閉電源

OTA 進行中


與冗餘整合

  • 如果 Jetson 設備已閃寫冗餘功能並當前啟動到 slot A。
  • 一旦觸發 OTA 更新,slot B 將重新閃寫。這意味著,如果用戶想要重新閃寫或升級 slot A,請先切換到 slot B。

具有冗餘的 OTA


參考


← 返回 解決方案 總覽